package cn.dapeng.linked;

import cn.dapeng.utils.LinkedCreator;

/**
 * @BelongProject study
 * @BelongPackage cn.dapeng.linked
 * @Description TODO
 * @ClassName TestCase
 * @Author xupenghong
 * @Date 2024/8/27 13:28
 * @Version 1.0.0
 */
public class TestCase {

    public static void main(String[] args) {

        int testTime = 10_0000;
        for (int i = 0; i < testTime; i++) {
            // 合并升序链表
//            LinkedNode head0 = LinkedCreator.createAscLinked(100, 10);
//            LinkedNode head1 = LinkedCreator.createAscLinked(100, 10);
//
//            LinkedNode head = MergeLinkedNode.mergeTwoAscLinked(head0, head1);
//            LinkedCreator.print(head);
//
//            if (!LinkedCreator.checkIfAsc(head)) {
//                LinkedCreator.print(head0);
//                LinkedCreator.print(head1);
//                System.out.println("链表长度：" + LinkedCreator.getLength(head0));
//                System.out.println("链表长度：" + LinkedCreator.getLength(head1));
//                System.out.println("Oops");
//                break;
//            }
            // 反转单链表
            LinkedNode h1 = LinkedCreator.createLinked(100, 10);
            LinkedCreator.print(h1);

            LinkedNode h2 = ReverseLinkedNode.reverse(h1);
            LinkedCreator.print(h2);

            LinkedNode h3 = ReverseLinkedNode.reverse(h2);
            LinkedCreator.print(h3);
            if(h1 != h3) {
                System.out.println("Oops!");
                break;
            }
            System.out.println();
        }

    }
}
